// ignore: non_constant_identifier_names
String? KErrorMsg(dynamic code) {
  if (code.runtimeType == int) {
    String pCode = code.toString();
    if (_errorCodeMapNet[pCode] != null) {
      return _errorCodeMapNet[pCode];
    }
    if (_errorCodeMapAccount[pCode] != null) {
      return _errorCodeMapAccount[pCode];
    }
    if (_errorCodeMapDevice[pCode] != null) {
      return _errorCodeMapDevice[pCode];
    }
    if (_errorCodeMapGeneral[pCode] != null) {
      return _errorCodeMapGeneral[pCode];
    }
    if (_errorCodeMapExcloud[pCode] != null){
      return _errorCodeMapExcloud[pCode];
    }else {
      return '错误码:$pCode';
    }
  } else if (code.runtimeType == String) {
    return code;
  } else {
    return '未知错误:${code.toString()}';
  }
}

/// 错误码--网络
const _errorCodeMapNet = {
  '-1000': '网络错误',
  '-1001': '发送缓冲区已满',
  '-1002': '网络发送失败',
  '-1003': '网络接收失败',
  '-1004': '网络超时',
  '-1005': '没有对象',
  '-1006': '创建失败',
  '-1007': '连接失败',
  '-1008': '超时',
  '-1009': '无连接',
  '-1010': 'socket异常',
  '-1011': 'socket关闭异常',
  '-1012': '创建缓存失败',
  '-1013': '网络忙',
  '-1014': '监听异常',
  '-1015': '接收异常',
  '-1016': '无缓冲区',
  '-1017': '网络错误或DNS配置错误',
  '-1018': '开发者账号未鉴权',
};

/// 错误码--账户
const _errorCodeMapAccount = {
  '-603000': 'FunSDK证书合法性验证校验失败*不合法UUID或者AppKey不允许使用',
  '-603001': 'json数据格式校验失败',
  '-603002': '登录用户名或密码为空',
  '-603003': '登录Token为空',
  '-603004': '第三方登录类型参数为空(微信--wx是Google是gg，Faceboo是fb，line是line)',
  '-604000': '用户名或密码错误',
  '-604010': '验证码错误',
  '-604011': '密码不一致',
  '-604012': '用户名已被注册',
  '-604013': '用户名为空',
  '-604014': '密码为空',
  '-604015': '确认密码为空',
  '-604016': '手机号为空',
  '-604017': '用户名格式不正确',
  '-604018': '密码格式不正确',
  '-604019': '确认密码格式不正确',
  '-604020': '手机号格式不正确',
  '-604021': '手机号已存在',
  '-604022': '手机号不存在',
  '-604023': '邮箱已存在',
  '-604024': '邮箱不存在',
  '-604026': '原始密码错误',
  '-604027': '修改密码失败',
  '-604028': '用户找回密码链接过期',
  '-604029': '用户ID为空',
  '-604030': '验证码为空',
  '-604031': '邮箱为空',
  '-604032': '邮箱格式不正确',
  '-604033': '无权限不允许用户？？？咋翻译',
  '-604034': '用户未绑定(用户名密码错误，标示用户未绑定雄迈账户，应跳转到绑定用户界面)（微信没有绑定）',
  '-604035': '用户绑定失败',
  '-604036': '手机绑定失败',
  '-604037': '邮箱绑定失败',
  '-604038': '发送验证码超过最大次数',
  '-604039': '注册失败',
  '-604040': '微信已绑定用户',
  '-604041': '没有权限修改用户名（仅针对生成的匿名用户修改）',
  '-604042': '用户没有绑定facebook',
  '-604043': '用户绑定facebook失败',
  '-604044': '用户没有google绑定',
  '-604045': '用户绑定google失败',
  '-604046': 'Line账户未绑定',
  '-604047': 'Line账户绑定失败',
  '-604048': '用户验证码错误次数太多，验证码失效',
  '-604049': '用户错误登陆次数太多，锁定账户十分钟',
  '-604050': '请求太频繁，请稍后尝试',
  '-604100': '设备非法不允许添加',
  '-604101': '设备已经存在（等同EE_USER_NO_DEV）',
  '-604102': '删除设备失败',
  '-604103': '设备信息修改失败',
  '-604104': '设备uuid参数异常',
  '-604105': '设备用户名参数异常',
  '-604106': '设备密码参数异常',
  '-604107': '设备端口参数异常',
  '-604108': '设备扩展字段参数异常（DEV_EXT_FAIL）',
  '-604109': '位置错误',
  '-604110': '新密码校验失败',
  '-604111': '确认密码校验失败',
  '-604112': '设备别名校验失败',
  '-604113': '设备ip地址错误',
  '-604114': '云存储支持',
  '-604115': '云存储不支持',
  '-604116': '将设备主账户移交给其他用户失败，检查用户是否拥有设备并且该用户拥有设备主账户权限',
  '-604117': '当前账户不是当前设备的主账户',
  '-604118': '设备不存在了已经被移除了',
  '-604119': '添加设备不唯一，其他账户已添加主要针对5G看看，账户绑定',
  '-604120': '添加设备最大限制（100）添加设备100个限制返回，主要针对之前超过100个能添加成功，但是设备列表无法显示。',
  '-604127': '缺少设备token',
  '-604200': '添加授权失败',
  '-604201': '修改授权失败',
  '-604202': '删除授权失败',
  '-604203': '单个授权同步失败(原因可能是type参数不对,或者云产品线未返回)',
  '-604300': '发送失败',
  '-604301': '邮箱签名失败',
  '-604302': '注销账号需要验证码',
  '-604304': '找回密码邮件发送超过次数，每个邮箱一天只能发送五次',
  '-604400': '短信接口验证失败，请联系我们',
  '-604401': '短信接口参数错误，请联系我们',
  '-604402': '短信发送超过次数，每个手机号一天只能发送三次',
  '-604403': '发送失败，请稍后再试',
  '-604404': '发送太频繁了，请间隔120秒',
  '-604405': '发送失败',
  '-604500': '未查到用户列表或用户列表为空',
  '-604502': '未查到设备列表或设备列表为空',
  '-604503': '重置appsecret失败',
  '-604600': '微信报警打开失败',
  '-604601': '微信报警关闭失败',
  '-605000': '服务器故障',
  '-605001': '证书不存在',
  '-605002': '请求头信息错误',
  '-605003': '证书失效',
  '-605004': '生成密钥校验错误',
  '-605005': '参数异常',
  '-605006': '连接失败',
  '-605007': '未知错误',
  '-605008': 'ip地址不允许接入',
  '-605009': '解密错误，说明用户名密码非法微信code错误、AES加解密错误',
  '-605010': 'token已过期',
  '-605011': 'token错误',
  '-605012': 'token无权限',
  '-605013': '不支持',
  '-605017': '数据过期',
  '-66000': '无效登录方式？',
  '-661427': '新密码格式不正确',
  '-661412': '用户名不存在',
};

/// 错误码--设备
const _errorCodeMapDevice = {
  '-70101': '未知错误',
  '-70102': '版本不支持',
  '-70103': '非法请求',
  '-70104': '用户已登录',
  '-70105': '用户未登录',
  '-70106': '用户名或密码不正确',
  '-70107': '无设备功能权限',
  '-70108': '超时',
  '-70109': '搜索失败，未找到相应的文件',
  '-70110': '搜索成功，返回所有文件',
  '-70111': '搜索成功，返回部分文件',
  '-70112': '用户已存在',
  '-70113': '用户不存在',
  '-70114': '用户组已存在',
  '-70115': '用户组不存在',
  '-70116': '盗版软件',
  '-70117': '消息格式不正确',
  '-70118': '未设置PTZ协议',
  '-70119': '未找到录像文件',
  '-70120': '配置未启用',
  '-70121': '数字频道未连接',
  '-70122': 'NAT链接已用尽，不允许新的NAT连接',
  '-70123': 'TCP视频链路达到最大值，不允许新的TCP视频链接',
  '-70124': '用户名和密码的加密算法不正确',
  '-70125': '已创建其他用户，无法再使用管理员登录',
  '-70130': 'NAS地址已存在',
  '-70131': '路径正在使用，无法操作',
  '-70132': 'NAS已达到支持的最大值，不允许进一步添加',
  '-70140': '消费品遥控器绑定了错误的密钥',
  '-70150': '成功，设备需要重启',
  '-70160': '视频备份失败',
  '-70161': '没有录制设备或设备未录制',
  '-70162': '正在添加设备',
  '-70163': '设备返回了错误的密码',
  '-70164': '设备空间不足',
  '-70165': '设备正忙，当前未使用',
  '-70202': '未登录',
  '-70203': '登录设备密码错误',
  '-70205': '非法用户',
  '-70206': '帐户被锁定，登录错误',
  '-70207': '帐户已列入黑名单',
  '-70208': '用户已使用',
  '-70209': '输入无效',
  '-70210': '如果要添加的用户已经存在，则索引重复',
  '-70211': '用于查询时对象不存在',
  '-70212': '对象不存在',
  '-70213': '目标正在使用中，如果组已使用，则无法删除',
  '-70214': '子集超出范围',
  '-70215': '密码不正确',
  '-70216': '密码不匹配',
  '-70217': '保留帐户',
  '-70218': '系统维护期间无法登录',
  '-70219': '试用期已结束，解锁密码不正确',
  '-70602': '需要重新启动应用程序',
  '-70603': '需要重新启动设备',
  '-70604': '写入文件失败',
  '-70605': '功能不支持',
  '-70606': '验证失败',
  '-70607': '配置解析错误',
  '-70609': '配置不存在',
};

/// 错误码--通用
const _errorCodeMapGeneral = {
  '-90000': '用户取消',
  '-90001': '非法文件',
  '-90003': '功能超期',
  '-90004': '达到最大连接数',
  '-99975': '离线状态',
  '-99976': '用户列为黑名单',
  '-99977': '用户被锁定',
  '-99978': '用户已在其他地方登录',
  '-99979': '用户名或密码错误',
  '-99980': '协议解析错误',
  '-99981': '缓冲区大小不够或缓冲区满',
  '-99982': '发送缓冲区已满',
  '-99983': '监听服务器启动失败',
  '-99984': '监听端口绑定失败（端口被占用）',
  '-99985': '服务器内部错误',
  '-99986': '对象正忙',
  '-99987': '网络发送错误',
  '-99988': '网络接受错误',
  '-99989': '创建缓冲区失败',
  '-99990': '未找到',
  '-99991': '超时',
  '-99992': '对象已存在',
  '-99993': '网络错误',
  '-99994': '不支持',
  '-99995': '读取文件失败',
  '-99996': '写入文件失败',
  '-99997': '打开文件失败',
  '-99998': '创建文件失败',
  '-99999': '参数异常',
  '-100000': '错误',
  '-1239510': '对象不存在',
  '-1239511': '值不存在',
};

/// 云存储最新协议错误吗
const _errorCodeMapExcloud = {
  '-225517' : '未获取到此用户可查询的时间区域',
  '-225518' : 'json数据格式校验失败',
};
